Termination w.r.t. Q of the following Term Rewriting System could be proven:

Q restricted rewrite system:
The TRS R consists of the following rules:

a__and(tt, X) → mark(X)
a__plus(N, 0) → mark(N)
a__plus(N, s(M)) → s(a__plus(mark(N), mark(M)))
mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(tt) → tt
mark(0) → 0
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)

Q is empty.


QTRS
  ↳ RRRPoloQTRSProof

Q restricted rewrite system:
The TRS R consists of the following rules:

a__and(tt, X) → mark(X)
a__plus(N, 0) → mark(N)
a__plus(N, s(M)) → s(a__plus(mark(N), mark(M)))
mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(tt) → tt
mark(0) → 0
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

a__and(tt, X) → mark(X)
a__plus(N, 0) → mark(N)
a__plus(N, s(M)) → s(a__plus(mark(N), mark(M)))
mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(tt) → tt
mark(0) → 0
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

a__plus(N, 0) → mark(N)
Used ordering:
Polynomial interpretation [25]:

POL(0) = 1   
POL(a__and(x1, x2)) = x1 + x2   
POL(a__plus(x1, x2)) = x1 + x2   
POL(and(x1, x2)) = x1 + x2   
POL(mark(x1)) = x1   
POL(plus(x1, x2)) = x1 + x2   
POL(s(x1)) = x1   
POL(tt) = 0   




↳ QTRS
  ↳ RRRPoloQTRSProof
QTRS
      ↳ RRRPoloQTRSProof

Q restricted rewrite system:
The TRS R consists of the following rules:

a__and(tt, X) → mark(X)
a__plus(N, s(M)) → s(a__plus(mark(N), mark(M)))
mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(tt) → tt
mark(0) → 0
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

a__and(tt, X) → mark(X)
a__plus(N, s(M)) → s(a__plus(mark(N), mark(M)))
mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(tt) → tt
mark(0) → 0
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

a__and(tt, X) → mark(X)
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(a__and(x1, x2)) = x1 + x2   
POL(a__plus(x1, x2)) = 1 + 2·x1 + x2   
POL(and(x1, x2)) = x1 + x2   
POL(mark(x1)) = x1   
POL(plus(x1, x2)) = 1 + 2·x1 + x2   
POL(s(x1)) = x1   
POL(tt) = 2   




↳ QTRS
  ↳ RRRPoloQTRSProof
    ↳ QTRS
      ↳ RRRPoloQTRSProof
QTRS
          ↳ RRRPoloQTRSProof

Q restricted rewrite system:
The TRS R consists of the following rules:

a__plus(N, s(M)) → s(a__plus(mark(N), mark(M)))
mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(tt) → tt
mark(0) → 0
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

a__plus(N, s(M)) → s(a__plus(mark(N), mark(M)))
mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(tt) → tt
mark(0) → 0
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

a__plus(N, s(M)) → s(a__plus(mark(N), mark(M)))
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(a__and(x1, x2)) = x1 + x2   
POL(a__plus(x1, x2)) = 1 + 2·x1 + 2·x2   
POL(and(x1, x2)) = x1 + x2   
POL(mark(x1)) = x1   
POL(plus(x1, x2)) = 1 + 2·x1 + 2·x2   
POL(s(x1)) = 1 + x1   
POL(tt) = 0   




↳ QTRS
  ↳ RRRPoloQTRSProof
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
QTRS
              ↳ RRRPoloQTRSProof

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(tt) → tt
mark(0) → 0
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(tt) → tt
mark(0) → 0
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

mark(tt) → tt
mark(s(X)) → s(mark(X))
a__and(X1, X2) → and(X1, X2)
a__plus(X1, X2) → plus(X1, X2)
Used ordering:
Polynomial interpretation [25]:

POL(0) = 0   
POL(a__and(x1, x2)) = 2 + 2·x1 + x2   
POL(a__plus(x1, x2)) = 2 + 2·x1 + 2·x2   
POL(and(x1, x2)) = 1 + 2·x1 + x2   
POL(mark(x1)) = 2·x1   
POL(plus(x1, x2)) = 1 + 2·x1 + 2·x2   
POL(s(x1)) = 1 + x1   
POL(tt) = 2   




↳ QTRS
  ↳ RRRPoloQTRSProof
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
QTRS
                  ↳ RRRPoloQTRSProof

Q restricted rewrite system:
The TRS R consists of the following rules:

mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(0) → 0

Q is empty.

The following Q TRS is given: Q restricted rewrite system:
The TRS R consists of the following rules:

mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(0) → 0

Q is empty.
The following rules can be removed by the rule removal processor [15] because they are oriented strictly by a polynomial ordering:

mark(and(X1, X2)) → a__and(mark(X1), X2)
mark(plus(X1, X2)) → a__plus(mark(X1), mark(X2))
mark(0) → 0
Used ordering:
Polynomial interpretation [25]:

POL(0) = 1   
POL(a__and(x1, x2)) = 1 + x1 + x2   
POL(a__plus(x1, x2)) = 1 + x1 + x2   
POL(and(x1, x2)) = 1 + x1 + 2·x2   
POL(mark(x1)) = 2 + 2·x1   
POL(plus(x1, x2)) = 2 + x1 + 2·x2   




↳ QTRS
  ↳ RRRPoloQTRSProof
    ↳ QTRS
      ↳ RRRPoloQTRSProof
        ↳ QTRS
          ↳ RRRPoloQTRSProof
            ↳ QTRS
              ↳ RRRPoloQTRSProof
                ↳ QTRS
                  ↳ RRRPoloQTRSProof
QTRS
                      ↳ RisEmptyProof

Q restricted rewrite system:
R is empty.
Q is empty.

The TRS R is empty. Hence, termination is trivially proven.